package main

import "fmt"
//import "unicode/utf8"

//数组的索引是从0开始的
func main()  {
	//第一种定义方式
	var array [10]int
	array[0] = 1
	array[1] = 2
	array[2] = 3
	array[3] = 4
	fmt.Println(array[0])
	fmt.Println(array[1])
	fmt.Println(array[2])
	fmt.Println(array[3])
	//第二种定义方式
	var array1 = [10]int{1,2,3,4,5,6,7,8,9,10}    //声明了一个长度为10的数组并进行元素的初始化
	var array1_len = len(array1)                  //获取数组的长度
	fmt.Println(array1)
	fmt.Println(array1_len)
	//第三种定义方式
	array2 := [10]int{1,2,3,4,5,6,7,8,9,10}		  //直接用:=的方式声明并初始化数组元素
	fmt.Println(array2)
	//第四种定义方式
	array3 := [...]int{1,2,3,4,5,6,7,8,9,10}      //省略长度，go语言会自动根据元素个数计算长度
	fmt.Println(array3)

	//数组的遍历--使用内置的关键词range进行数组的遍历
	array4 := [...]int{1,2,3,4,5,6,7,8,9,10}
	for i, value := range array4 {
		fmt.Printf("Index = %d, Value = %d\n", i, value)
	}
}